package cn.us.eagle.query;

import java.util.List;

import cn.us.eagle.query.criteria.QueryCriteria;

/**
 * 
 * 使用IBATIS实现查询接口
 * 
 * @author ReasonZhong
 * 
 */
public interface Query {

	/**
	 * 无条件查询
	 * 
	 * @param statementName
	 *            查询语句名称
	 * @return
	 */
	@SuppressWarnings("rawtypes")
	List queryForList(String statementName);

	/**
	 * 获取记录总数
	 * 
	 * @param queryName
	 *            查询语句名称
	 * @param criteria
	 *            查询条件
	 * @return
	 */
	int queryForCount(String statementName, QueryCriteria criteria);

	/**
	 * 条件查询
	 * 
	 * @param statementName
	 *            查询语句名称
	 * @param criteria
	 *            查询条件
	 * @return
	 */
	@SuppressWarnings("rawtypes")
	List queryForList(String statementName, QueryCriteria criteria);

	boolean isExists(String statementName, String value);
}
